Amazon Redshift:AWS管理コンソール上で「クエリエディタ」機能が使えるようになりました

Amazon Redshift:AWS管理コンソール上で「クエリエディタ」機能が使えるようになりました

Clock Icon2018.09.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Amazon Redshiftで何らかデータ操作を行う場合、Amazon Redshiftに対応しているDBクライアントツールを別途導入してアクセスを行う...というのが一般的ではありますが。AWS管理コンソールメニュー上で、「クエリエディタ(Query Editor)」なる機能が利用出来るようになっておりました。

存在を確認出来た本日(2018年09月27日)時点では「ベータ版」の扱いとなっておりますが、触れる範囲の部分に関して一通り見ていきたいと思います。

目次

利用するための設定・条件

当エントリでご紹介する機能を利用するためには、IAMポリシーとしてAmazonRedshiftQueryEditorが必要となります。不足している場合はこの権限を付与する対応を行ってください。

機能へのアクセス

当該機能は、AWS管理コンソール上でAmazon Redshiftメニューを選択すると、左側に表示されるメニュー一覧から遷移出来るようになります。

メニューリンクをクリックすると、以下の様な形で認証情報の入力を求められます。

入力&設定後[接続]を押下。

クエリエディタ画面が以下の様な形で表示されました。

クエリの実行

基本的な構成は、良くあるSQLエディタとそう大差はない感じです。任意のクエリを記述し、[Run Query]を押下。

クエリの実行中ステータスはボタンの表示内容が変わります(実行クエリのキャンセルも可能です)。

実行結果は以下の様な形で表示されます。

実行結果については100件ずつの表示となります。

実行するSQLの内容については、一通りのSQLは流せそうな感じではありました(COPYも問題無く実行可能)。ただ、実行クエリについては1件ずつの実行しか出来ないようです。

実行時間の表示

実行クエリについては、実行時間の内訳を確認する事も可能です。[View Execution]を押下する事で詳細内容を確認出来ます。今回実行した内容はシンプルな内容だったので結果もシンプルですが、込み入った&時間の掛かるクエリに関してはこの内容を確認する事で改善の糸口も見えてくるかもしれません。

実行結果をCSVとしてダウンロード

クエリの実行結果は[Download CSV]ボタン押下でCSVファイルとしてダウンロードする事が出来ます。

クエリの整形

記述したクエリの内容を良い感じに整形してくれる機能も利用可能です。エディタ右上の</>のアイコンをクリックすると、

以下の様に良い感じにフォーマットを揃えてくれます。

また、編集テキストボックスを最大化表示する事も可能です。

クエリの補完

一般的なクエリエディタの場合、「コード補完」の可否が効率Upに影響してきますが、今回のこのRedshiftのクエリエディタに関してはバッチリサポートしています!補完候補表示についてはControl + Spaceで実行する形となっています。

SQLの主要な予約語(※リストアップ条件は不明)や

スキーマ名及びテーブル名、

テーブルのカラム名などが以下の様に候補として表示され、選択する事が出来ます。

ちなみに、日本語のカラム名やテーブル名についても補完候補はちゃんと表示されました!

クエリの保存

エディタに記載したクエリは個別に保存しておく事が可能です。[Save as]押下でクエリ名と詳細内容を記載し、[Add Query]を押下。

すると、以下の様な形でSQLファイルとして保存されました。クエリの一覧画面には、こちらもメニューに新設された「Saved Queries」から遷移します。

保存したクエリは、テキスト内容をコピーしたり、

また、テキスト内容をSQLファイルとしてダウンロードする事が可能です。

SQLのリンクをクリックすると、クエリエディタ画面に遷移します。

まとめ

という訳で、AWS管理コンソール Amazon Redshiftにおける「クエリエディタ」機能の紹介(※但しベータ版)でした。

なにぶんベータ版ではあるので幾つか気になる部分はありますが、それでも十分すぎるくらい便利なツールとして利用出来るクオリティなのではと思います。簡易的な内容の確認であればそのまま「こちらのクエリエディタをお使いください」と案内する...で良いんじゃね?という感じですね。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.